1. Technical Field
This disclosure generally relates to machine-readable symbols, and more particularly to processing systems and methods for acquiring a machine-readable symbol.
2. Description of the Related Art
Machine-readable symbols provide a means for encoding information that is determinable when the machine-readable symbol is acquired by an optical-based detector. One exemplary type of machine-readable symbol is a bar code that employs a series of bars and white spaces vertically oriented along a single row. Groups of bars and spaces correspond to a codeword. The codeword is associated with an alpha-numeric symbol or other symbol. Once image data corresponding to the machine-readable symbol is acquired using an optical reading device, codeword(s) are decoded and information encoded into the symbol may be determined.
To facilitate encoding of greater amounts of information into a single machine-readable symbol, two-dimensional bar codes have been devised that employ two or more rows of vertically oriented bars and spaces, commonly referred to as stacked, matrix and/or area bar codes. Rows are typically adjacent to each other. Depending upon the machine-readable symbol format, row separators (such as a narrow line or space along the length of the symbol) may be used to facilitate identification of individual rows. Around the edges of a machine-readable symbol is an unmarked region, such as a white background or the like, referred to as a quiet area, which is used to demark the boundaries of the machine-readable symbol.
One type of optical reading device employs a matrix of light sensitive elements, such as in a charge coupled device (CCD), to acquire an image of a target machine-readable symbol. An image capture symbol reader captures a single image, which includes the symbol and the quiet areas around the machine-readable symbol. The captured image data is then stored into a suitable memory medium.
The direction of reading information from the matrix of light sensitive elements typically corresponds to the general orientation of the codeword rows of the machine-readable symbol because the rows of light sensitive elements generally are in alignment with the rows of the machine-readable symbol. Upon completion of receiving the image information from a row of light sensitive elements, referred to hereinafter for convenience as a scan line, light information from the next row of light sensitive elements, which corresponds to an adjacent portion of the machine-readable symbol, is received. This sequential line-by-line receiving of rows of light sensitive elements is continued until at least an area encompassing the entire target machine-readable symbol has been received. The width of a row of light sensitive elements (scan line) is relatively smaller than the vertical height of a codeword bar. Thus, several scans of a single codeword row of the matrix symbol occur as the symbol is scanned.
Detected light information received from the matrix of rows of light sensitive elements is processed into a digital data signal. The digital data is then stored into a suitable memory medium. The above-described line-by-line receiving process and storing the digitized data may be performed relatively quickly. The digitized data is then processed such that individual codewords are identified and subsequently decoded. However, analyzing the stored digitized data and decoding the data into codewords may require a significant amount of time if a large amount of information is encoded into the scanned machine-readable symbol.
Further, an image capture symbol reader requires a relatively sophisticated image processing system and a sufficiently large matrix of light sensitive elements to ensure that the captured image is sufficiently large to encompass all of the symbol and enough quiet area around the symbol to identify symbol boundaries. Further, the matrix of light sensitive elements must have sufficient resolution to discriminate between codeword rows of the machine-readable symbol. Accordingly, such optical devices are relatively expensive because of the complex processing system and large matrix of light sensitive elements. Also, optical image capture symbol readers may require a relatively long period of time for image processing and codeword decoding since a large amount of image information must be retrieved and processed.
Another type of optical device used to acquire information encoded in a symbol is an optical line scanner. The optical line scanner scans along a single line or path, and detects the bars and spaces of the target symbol one scan line at a time. One exemplary type of optical line scanner emits a focused beam of electromagnetic energy towards the target machine-readable symbol. The focused beam is moved along a path or line over the machine-readable symbol surface, referred to herein as a scan line.
Another exemplary type of optical line scanner emits electromagnetic energy towards the target symbol. An aperture means or the like receives returning electromagnetic energy from a relatively small portion of the machine-readable symbol, which is detected by the optical detector system of the optical line scanner. The position or orientation of the aperture means is adjusted such that a relatively small portion of detected electromagnetic energy is received along a path or line corresponding to the machine-readable symbol surface, also referred to herein as a scan line.
The direction of scanning along a scan line typically corresponds to the general orientation of the codeword rows of the machine-readable symbol. Upon completion of the scanning of a scan line, an adjacent portion of the machine-readable symbol is scanned. This sequential line-by-line scanning by successively moving scan lines across the machine-readable symbol scanning is continued until an area encompassing the entire target machine-readable symbol has been scanned.
The optical detector of the optical line scanner generates an analog signal that is processed into a digital data signal. The digital data is then stored into a suitable memory medium. The above-described line-by-line scanning process and storing the digitized data may be performed relatively quickly. However, analyzing the stored digitized signal data and decoding the data into codewords may require a significant amount of time if a large amount of information is encoded into the scanned machine-readable symbol.
In both of the above-described types of optical line scanners, the width of a scan line is relatively smaller than the vertical height of a bar. Thus, several scans of a single row of the matrix symbol occur as the symbol is scanned.
Initially, with either an image capture symbol reader or an optical line scanner, no information is known about the acquired machine-readable symbol. For example, the number of rows in the machine-readable symbol is not known. If the machine-readable symbol employs a format that allows for a variable row length, the number of codewords per row is not initially known. If the machine-readable symbol employs a format that allows for a variable number of codeword rows, the number of codeword rows is not initially known. If the machine-readable symbol format employs a variable level of error correction, the error correction parameters must be determined.
The stored data of the machine-readable symbol is analyzed on a row-by-row basis. If an optical line scanner is employed to read the machine-readable symbol, scan lines are decoded one line at a time. If an image capture symbol reader is employed to read the machine-readable symbol, information from rows of light sensitive elements are decoded one row at a time.
Typically, the decoded data is first analyzed to determine general information pertaining to the machine-readable symbol, such as the number of codewords per row, the number of rows, and/or the error correction information. As each row of data is decoded, the decoded data is typically stored into a memory using a suitable data matrix format. This process of populating the data matrix with codewords of an acquired machine-readable symbol is very time consuming when a large amount of information is encoded into a machine-readable symbol. That is, decoding a machine-readable symbol with a large number of codewords is a relatively slow process.
Accordingly, although there have been advances in the field, there remains a need in the art for decreasing decoding time of relatively large machine-readable symbols. The present disclosure addresses these needs and provides further related advantages.